/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Facade;

import BO.BODocumento;
import BO.BOUsuario;
import java.util.List;
import model.Documento;
import org.hibernate.HibernateException;

/**
 *
 * @author Jefferson
 */
public class Facade {
    private BODocumento documento;
    private BOUsuario usuario;
    private static Facade instance = null;
    
    private Facade() {}
    
    public static Facade getInstance() {
        if (instance == null) {
            instance = new Facade();
        }
        return instance;
    }
    
    public void inserirDocumento(Documento doc) throws HibernateException {
        documento = BODocumento.getInstance();
        documento.inserir(doc);
    }
    
    public void alterarDocumento(Documento doc) throws HibernateException {
        documento = BODocumento.getInstance();
        documento.alterar(doc);
    }
    
    public void excluirDocumento(Documento doc) throws HibernateException {
        documento = BODocumento.getInstance();
        documento.excluir(doc);
    }
    
    public List listarTodosDocumentos(String ordem) throws HibernateException {
        documento = BODocumento.getInstance();
        return documento.listarTodos(ordem);
    }
    
    public Documento carregarDocumento(int id) throws HibernateException {
        documento = BODocumento.getInstance();
        return documento.carregar(id);
    }
    
    public List listarTodosUsuarios(String ordem) throws HibernateException {
        usuario = BOUsuario.getInstance();
        return usuario.listarTodos(ordem);
    }
}